package com.hrpc;

import com.hrpc.discovery.RegisterConfig;


public class clientApplication {
    public static void main(String[] args) {
        ReferenceConfig<SayHello> referenceConfig=new ReferenceConfig();
        referenceConfig.setInterfaceRef(SayHello.class);
        //代理做了什么？
        // 1.连接注册中心
        // 2.拉取服务列表
        // 3.选择一个服务并建立连接
        // 4.发送请求(携带一些信息：接口名，参数列表，方法的名字)
        hRpcBootStarp.getInstance()
                .application("first-rpc-consummer")
                .register(new RegisterConfig("zookeeper://127.0.0.1:2181"))
                .serialize("hessian")
                .compress("gzip")
                .group("master")
                .reference(referenceConfig);

        SayHello sayHello = referenceConfig.get();
        String nih = sayHello.sayHello("WWWWcf");
        System.out.println(nih);

        //获取代理对象，通过get拿到这个方法
//        for (int i = 0; i < 10; i++) {
//            SayHello sayHello = referenceConfig.get();
//            String nih = sayHello.sayHello("WWWWcf");
//            System.out.println(nih);
//        }

//        for (Map.Entry<String, ServiceConfig<?>> entry : hRpcBootStarp.SERVERS_LIST.entrySet()){
//            HeartbeatDetector.detectHeart(entry.getKey());
//        }

    }
}
